package com.meituan.sdk.model.ddzhkh.shangpin.productUnitedUpdatePrices;

import com.meituan.sdk.annotations.ApiMeta;
import java.util.List;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import com.meituan.sdk.internal.utils.JsonUtil;
import com.google.gson.annotations.SerializedName;
import javax.validation.constraints.NotNull;
import com.meituan.sdk.MeituanResponse;
import com.meituan.sdk.MeituanRequest;
import javax.validation.constraints.NotEmpty;

/**
* 商品快速改价（通用）
* This file was automatically generated.
*/
@ApiMeta(
    path = "/ddzhkh/shangpin/united/update/prices",
    businessId = 59,
    apiVersion = "10085",
    apiName = "product_united_update_prices",
    needAuth = true
)
public class ProductUnitedUpdatePricesRequest implements MeituanRequest<ProductUnitedUpdatePricesResponse> {
    /**
    * <p data-diff-id="ct-diff-id-f6f8737d-618b-4a52-9832-33d3bb3ff108">商品id</p>
    */
    @NotNull(message = "productId不能为空")
    @SerializedName("productId")
    private Long productId;
    /**
    * <p data-diff-id="ct-diff-id-d896074c-be02-4ab4-823b-a8f304fece83">改价sku</p>
    */
    @NotEmpty(message = "skuPrices不能为空")
    @SerializedName("skuPrices")
    private List<SkuPricesSub> skuPrices;

    public Long getProductId() {
        return productId;
    }
    public void setProductId(Long productId) {
        this.productId = productId;
    }
    public List<SkuPricesSub> getSkuPrices() {
        return skuPrices;
    }
    public void setSkuPrices(List<SkuPricesSub> skuPrices) {
        this.skuPrices = skuPrices;
    }


    @Override
    public MeituanResponse<ProductUnitedUpdatePricesResponse> deserializeResponse(String response) {
        Type type = new TypeToken<MeituanResponse<ProductUnitedUpdatePricesResponse>>(){}.getType();
        return JsonUtil.fromJson(response, type);
    }
    @Override
    public String serializeToJson() {
        return JsonUtil.toJson(this);
    }


    @Override
    public String toString() {
        return "ProductUnitedUpdatePricesRequest{" + "productId=" + productId + "," + "skuPrices=" + skuPrices + "}";
    }
}
